#

| Chapter 10 The Sed Editor |

## 10.2 Conceptual Overview

Sed is a non-interactive, or stream-oriented, editor. It interprets a script and performs the actions in the script. Sed is stream-oriented because, like many UNIX programs, input flows through the program and is directed to standard output. For example, sort is stream-oriented; vi is not. Sed's input typically comes from a file but can be directed from the keyboard. Output goes to the screen by default but can be captured in a file instead.

### 10.2.1 Typical Uses of Sed Include:

- Editing one or more files automatically.

- Simplifying repetitive edits to multiple files.

- Writing conversion programs.

### 10.2.2 Sed Operates as Follows:

- Each line of input is copied into a pattern space.

- All editing commands in a sed script are applied in order to each line of input.

- Editing commands are applied to all lines (globally) unless line addressing restricts the lines affected.

- If a command changes the input, subsequent command-addresses will be applied to the current line in the pattern space, not the original input line.

- The original input file is unchanged because the editing commands modify a copy of the original input line. The copy is sent to standard output (but can be redirected to a file).

10.1 Command-line Syntax |  | 10.3 Syntax of Sed Commands